#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QAction>
#include <QMdiArea>
#include <QMenu>
#include <QMenuBar>
#include <QApplication>
#include <QFileDialog>
#include <QToolBar>
#include <QMessageBox>
#include <QStatusBar>
#include <QSettings>
#include <QDockWidget>
#include <QLabel>

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
private slots:
    void openfile();
    void save();
    void about();
protected:
    void closeEvent(QCloseEvent *event);
private:
    void createActions();
    void createMenus();
    void createToolBars();
    void createStatusBar();
    void readSettings();
    void writeSettings();
    void createDockWindows();
    //main area
    QMdiArea * mdiArea;
    //actions
    QAction *openfileAct;
    QAction *saveAct;
    QAction *aboutAct;
    QAction *aboutQtAct;
    QAction *quitAct;
    QAction *rgbhisteqAct;
    QAction *yuvhisteqAct;
    QAction *orgAct;
    //menu
    QMenu *fileMenu;
    QMenu *editMenu;
    QMenu *helpMenu;
    //toolbar
    QToolBar *openToolBar;
    QToolBar *editToolBar;
    QToolBar *rgbToolBar;
    QToolBar *yuvToolBar;
    QToolBar *orgToolBar;
};

#endif // MAINWINDOW_H
